草庐IT

php - drupal 输入过滤器示例

全部标签

ruby - RSpec 模拟对象示例

我是模拟对象的新手,我正在尝试学习如何在RSpec中使用它们。有人可以发布有关如何使用RSpec模拟对象API的示例(helloRSpecMock对象世界类型示例)或链接(或任何其他引用)吗? 最佳答案 这是我为Rails应用程序中的Controller测试所做的简单模拟示例:before(:each)do@page=mock_model(Page)@page.stub!(:path)@page.stub!(:find_by_id)@page_type=mock_model(PageType)@page_type.stub!(:na

ruby-on-rails - 是否有与 PHP 的 isset() 等效的 Rails?

基本上只是检查以确保设置了url参数。我如何在PHP中做到这一点:if(isset($_POST['foo'])&&isset($_POST['bar'])){}这是RoR中isset()的粗略/最佳等价物吗?if(!params['foo'].nil?&&!params['bar'].nil?)end 最佳答案 更接近的匹配可能是#present?#returnstrueifnotnilandnotblankparams['foo'].present?还有一些其他的方法#returnstrueifnilparams['foo'].

ruby - Kernel#gets 尝试读取文件而不是标准输入

我是Ruby的新手,今天我编写了一个应用程序,您可以通过ARGV向其传递参数。但在我的应用程序中,我希望能够使用“gets”。问题是,每次我尝试这样做时,都会出现错误。这是一个显示我的问题的简单脚本:print"Saysomething!"input=gets如果我这样调用它:$rubyscript.rbthisisarguments我收到这个错误:script.rb:2:in`gets':Nosuchfileordirectory-this(Errno::ENOENT)fromscript.rb:2希望有人能帮我解决这个问题,这样我就可以继续我的Ruby之旅。:)编辑:我知道“Get

ruby-on-rails - 过滤器在渲染之前但在 Controller 之后执行?

假设我在基本Controller中有一些逻辑将信息传递给View以构建类似面包屑的东西:classContextAwareController我希望此build_breadcrumb方法在主Controller逻辑之后但View呈现之前运行。上面的代码运行得太晚了,但是before_filter就太早了。有人可以建议一种方法来完成此操作,而无需在子Controller中的每个操作结束时显式调用build_breadcumb吗?谢谢 最佳答案 我遇到了同样的问题,然后这样解决了:classApplicationController

ruby-on-rails - 您如何查看 ruby​​ 中的调用堆栈示例?

我正在研究不同的优化技术,我发现了这篇文章AnalyzingCodeforEfficiency?相信对调用堆栈进行采样比使用分析器更有效的人。基本思想是,如果您查看调用堆栈,您会看到您的应用程序最有可能花费大部分时间的地方,然后在那里进行优化。这当然很有趣,而且他显然是这方面的专家,但我不知道如何在ruby中查看调用堆栈。在调试器中,我可以说“信息堆栈”,但似乎只显示一行。编辑:我看到MikeDunlavey的评论:“我只想指出,如果你在调试器下运行,手动中断它,并显示调用堆栈......”我只是不确定如何手动中断它并隐藏调用堆栈。 最佳答案

ruby - Ruby 中 Postgres 查询的简单示例

对于我的生活,我找不到一个简单的例子来运行类似的东西“SELECT*FROMMyTable”在ruby中。我发现的所有内容都假定使用ORM或Rails。现在,我不想要ORM;我不想要Rails。我正在寻找使用pggem并执行简单查询的独立程序。 最佳答案 来自pggem文档(http://rubydoc.info/gems/pg/0.10.0/frames)require'pg'conn=PGconn.open(:dbname=>'test')res=conn.exec('SELECT1ASa,2ASb,NULLASc')res.g

ruby-on-rails - 如何过滤rails中的参数?

Rails内置了日志过滤功能,因此您无需记录密码和信用卡信息。非常适用于此,但当您想要触发自定义日志(如电子邮件)并发送您自己的参数或其他数据时,参数显然不会自动过滤。我一直在挖掘并试图在Rails源代码中找到它,但到目前为止还没有运气。我已将rails配置为按如下方式过滤参数,它可以正常工作以将数据排除在rails日志之外:config.filter_parameters+=[:password,:password_confirmation,:credit_card]在将敏感数据转储到电子邮件、api调用或自定义(非Rails)日志之前,您如何从params哈希中过滤敏感数据?

ruby-on-rails - Capistrano 在部署时要求输入密码,尽管有 SSH key

我的sshkey绝对设置正确,因为在使用ssh时我从未被提示输入密码。但是capistrano在使用capdeploy部署时仍然要求输入密码。但是,奇怪的是,当我使用capdeploy:setup进行设置时,它并不要求输入密码。如果没有密码提示,这将使部署周期更加顺畅。细节:我正在将Sinatra应用程序部署到Dreamhost共享帐户(使用Passenger)。很久以前我就按照教程做了,当时效果很好。从那以后有些东西坏了。我正在使用capistrano(2.5.9)和git版本1.6.1.1。这是我的Capfile:load'deploy'ifrespond_to?(:namespa

ruby-on-rails - Capistrano SSH::AuthenticationFailed,不提示输入密码

我已经成功使用Capistrano一段时间了,突然之间我失去了部署能力的每个项目。环境:osX(小牛队)ruby1.9.3p194rvm(在本地,不在服务器上)rails3.2及以上RubyGems1.8.25我没有使用rsa_keys或任何我希望capistrano提示输入用户名和密码的东西。突然它决定不要求输入密码,但确实要求输入用户。然后它回滚并给我以下错误。[deploy:update_code]exceptionwhilerollingback:Capistrano::ConnectionError,connectionfailedfor:sub.example.com(Ne

Ruby 哈希白名单过滤器

我想弄清楚如何将键和值对从一个过滤器过滤到另一个过滤器例如我想取这个散列x={"one"=>"one","two"=>"two","three"=>"three"}y=x.some_functiony=={"one"=>"one","two"=>"two"}谢谢你的帮助编辑:在这个例子中可能应该提到,我希望它作为一个白名单过滤器。也就是说,我知道我想要什么,而不是我不想要什么。 最佳答案 Rails的ActiveSupport库还为您提供切片,除了在关键级别处理哈希:y=x.slice("one","two")#=>{"one"=>